package com.yuw.comparedemo;

import java.util.Iterator;
import java.util.Set;
import java.util.TreeSet;

public class ComparableTestDriver {

	public static void main(String[] args) {
		 test01();		 
	}

	/**
	 * TreeSet的应用
	 */
	private static void test01() {
		// HashSet元素的存储和读取操作
		// 创建一个HashSet的是实例对象
		// 面向接口的编程：左侧是接口父类，右侧是实现子类的实例对象（多态：父类指代子类）
		Set set = new TreeSet();
		// 存入Student元素对象
		set.add(new Student("张三","15001",21,80));
		set.add(new Student("李四","15002",22,70));		
		set.add(new Student("王五","15003",20,90));

		System.out.println("增强型的for循环遍历取出HashSet集合中的元素：");
		// 读取元素
		for (Object object : set) {
			System.out.println(((Student)object).getStuName()+":"+((Student)object).getStuScore());
		}

		System.out.println("使用迭代器循环遍历取出HashSet集合中的元素：");
		// 获取当前集合对象的迭代器对象
		Iterator it = set.iterator();
		// 迭代器的 hasNext方法判定有么有下一个元素对象；
		// 迭代器的 next方法获取下一个元素对象，并将迭代器迭代位置（指针）向后挪动一个偏移量
		while(it.hasNext()) {
			System.out.println(it.next());
		}
	}
}
